<?php
class Prensa extends Doctrine_Record {
    public function setTableDefinition() {
        $this->setTableName('prensa');
        $this->hasColumn('medio','string',255);
        $this->hasColumn('titulo','string',255);
        $this->hasColumn('bajada','string',10000);
        $this->hasColumn('url','date');
        $this->hasColumn('imagen','string', 255);
    }

    //INCIO DE GETERS Y SETERS
    public function getMedio () {
        return utf8_decode($this->_get('medio'));
    }
    public function setMedio ($medio) {
        $this->_set('medio', utf8_encode($medio));
    }
    public function getTitulo () {
        return utf8_decode($this->_get('titulo'));
    }
    public function setTitulo ($titulo) {
        $this->_set('titulo', utf8_encode($titulo));
    }
    public function getBajada () {
        return utf8_decode($this->_get('bajada'));
    }
    public function setBajada ($bajada) {
        $this->_set('bajada', utf8_encode($bajada));
    }
    //FIN SETERS Y GETERS
    
    //FUNCIONES DE PAGINADO
    public static function contar() {
        $q = Doctrine_Query::create()
            ->select('COUNT(p.id) as total')
            ->from('Prensa p');
        $total = $q->execute();
    return ($total->count())?$total[0]->total:0;
    }

    public static function listar($cuantos, $desde) {
        $q = Doctrine_Query::create()
            ->select('p.*')
            ->from('Prensa p')
            ->limit($cuantos) //cuantos trae
            ->offset($desde) //a partir de donde empieza a traer
            ->orderBy('p.id');
        $resultado = $q->execute();
        return $resultado;
    }
    //FIN FUNCIONES DE PAGINADO
}
?>